GDK W32: add environment variable to override system font scaling
authorРуслан Ижбулатов <lrn1986@gmail.com>
Thu, 31 Jul 2014 14:03:00 +0000 (14:03 +0000)
committerРуслан Ижбулатов <lrn1986@gmail.com>
Thu, 31 Jul 2014 14:27:14 +0000 (14:27 +0000)
Support environment variable GDK_WIN32_FONT_RESOLUTION that can be set to
a desired dpi (72, 96, 130, etc) to override system settings. Useful for
debugging, since changing system font scaling requires the user to log off
and log on again.

https://bugzilla.gnome.org/show_bug.cgi?id=734038

gdk/win32/gdkscreen-win32.c

index f86d7ce0ab3456e0d0e131ba95bdb792b257b809..8c6fb03400162a9107fa96bea96aa2c3f6846528 100644 (file)
@@ -39,6 +39,7 @@ gdk_win32_screen_init (GdkWin32Screen *display)
   GdkScreen *screen = GDK_SCREEN (display);
   HDC screen_dc;
   int logpixelsx = -1;
+  const gchar *font_resolution;
 
   screen_dc = GetDC (NULL);
 
@@ -48,6 +49,14 @@ gdk_win32_screen_init (GdkWin32Screen *display)
       ReleaseDC (NULL, screen_dc);
     }
 
+  font_resolution = g_getenv ("GDK_WIN32_FONT_RESOLUTION");
+  if (font_resolution)
+    {
+      int env_logpixelsx = atol (font_resolution);
+      if (env_logpixelsx > 0)
+        logpixelsx = env_logpixelsx;
+    }
+
   if (logpixelsx > 0)
     _gdk_screen_set_resolution (screen, logpixelsx);
 }